package cn.rc.rcsystem.exception;

import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor
public enum GlobalExceptionCodeEnum {

    // 1.公共成功与失败异常
    OK("成功！", "1"),
    ERROR("失败！", "-1"),
    FALLBACK("服务不可用！", "-2"),
    BAIDUAI_ERROR("非法字符！", "-1"),
    ORDER_ALREADY_EXISTS_ERR0R("订单已存在！", "-1"),

    // 2.所有微服务的公共错误码，错误码以1XXX打头
    COMMON_PARAM_IS_NULL_ERROR("参数为空异常！", "1001"),
    COMMON_PARAM_ILLEGAL_ERROR("非法参数异常！", "1002"),
    COMMON_PARAM_JSR303_ERROR("JSR303校验异常！", "1003"),
    VEHICLE_ALREADY_EXISTS_ERROR("车辆已存在","1004"),
    PLEASE_ADD_THE_CORRECT_VEHICLE_NUMBER("请添加正确车辆数字","1005"),
    NO_VEHICLE_ALREADY_EXISTS_ERROR("车辆不存在","1004"),
    // 3.system服务异常以2XXX打头
    STORE_ALREADY_EXISTS_ERROR("店铺已存在！", "1503"),
    UNDER_AGE_ERROR("年龄未达要求20岁！", "1504"),

    // 4.user服务异常以3XXX打头
    USER_SMS_CODE_EXPIRED_ERROR("短信验证码已过期！", "3001"),
    USER_SMS_CODE_ERROR("短信验证码错误！", "3002"),
    USER_PHONE_EXISTS_ERROR("手机号已注册！", "3003"),
    USER_REGISTER_ERROR("注册失败，请重试！", "3004"),
    USER_PHONE_NUMBERS_INCONSISTENT("两次手机号不一致", "3005"),
    USER_SMS_IS_NULL_ERROR("短信验证码不能空！", "3006"),
    USER_ALREADY_EXISTS("用户已存在！", "3001"),

    // 6.uaa服务异常以4XXX打头

    // 5.comm服务异常以5XXX打头
    COMM_PHONE_IS_NULL_ERROR("手机号不能为空！", "5001"),
    COMM_PHONE_FORMAT_ERROR("手机号格式不正确！", "5002"),
    COMM_INTERVAL_ERROR("发送过于频繁，请稍后重试！", "5003"),
    COMM_IMAGECODE_IS_NULL_ERROR("图片验证码不能为空！", "5004"),
    COMM_PASSWORD_IS_NULL_ERROR("密码不能为空！", "5005"),
    COMM_GRAPHIC_VERIFICATION_CODE_ERROR("图形验证码错误！", "5006"),
    COMM_USER_DOES_NOT_EXIST("该用户不存在！", "5007"),
    COMM_PHONE_BLACK_ERRO("你已经被禁用发送短信验证码，请联系管理员！", "5007"),


    // 7.课程服务抛异常Course
    COURSE_NAME_ALREADY_USED("课程名称以使用，请重新输入课程名称！", "7007"),
    ;

    private String message;

    private String code;

}
